package tp1.presentacion.modelo;

import java.util.Date;

public class Viaje {
	int id;
	String dni;
	String tarjeta;
	Localidad origen;
	Localidad destino;
	Tren tren;
	TipoVagon vagon;
	float precio;
	Date fechaEmision;
	
	public Viaje() {}
	public Viaje(int id, String dni, String tarjeta, Localidad origen,
			Localidad destino, Tren tren, TipoVagon vagon, float precio) {
		this.id = id;
		this.dni = dni;
		this.tarjeta = tarjeta;
		this.origen = origen;
		this.destino = destino;
		this.tren = tren;
		this.vagon = vagon;
		this.precio = precio;
		this.fechaEmision = new Date();
	}
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getDni() {
		return dni;
	}
	public void setDni(String dni) {
		this.dni = dni;
	}
	public String getTarjeta() {
		return tarjeta;
	}
	public void setTarjeta(String tarjeta) {
		this.tarjeta = tarjeta;
	}
	public Localidad getOrigen() {
		return origen;
	}
	public void setOrigen(Localidad origen) {
		this.origen = origen;
	}
	public Localidad getDestino() {
		return destino;
	}
	public void setDestino(Localidad destino) {
		this.destino = destino;
	}
	public Tren getTren() {
		return tren;
	}
	public void setTren(Tren tren) {
		this.tren = tren;
	}
	public TipoVagon getVagon() {
		return vagon;
	}
	public void setVagon(TipoVagon vagon) {
		this.vagon = vagon;
	}
	public float getPrecio() {
		return precio;
	}
	public void setPrecio(float precio) {
		this.precio = precio;
	}
	public Date getFechaEmision() {
		return fechaEmision;
	}
	public void setFechaEmision(Date fechaEmision) {
		this.fechaEmision = fechaEmision;
	}
	
	public float calcularPrecio() {
		if(origen!=null && destino!=null && tren!=null && vagon!=null) {
			int recorrido = Math.abs(destino.getDistancia()-origen.getDistancia());
			float prc = (tren.getPrecio()/100)*recorrido;
			prc = prc+((prc*vagon.getRecargo())/100);
			return prc;
		}			
		return 0;
	}
}
